package com.shengzai

import scala.collection.mutable

object Code26Map {
  def main(args: Array[String]): Unit = {
    val hashMap = new mutable.HashMap[String, Int]()

    //设置值
    hashMap.+=(("hello",1))
    hashMap.put("world",2)
    hashMap.+=(Tuple2("scala",4))
    hashMap.+=("python" ->3)
    println(hashMap)

    //修改值
    hashMap("python") =5
    println(hashMap)

    //Tuple格式
    hashMap.foreach(println)

    //转列表
    val hasMapList: List[(String, Int)] = hashMap.toList
    hasMapList.foreach(println)

    //Some(5) Some() 括号里面是该key的值
    println(hashMap.get("python"))

    // 5 直接取出
    println(hashMap("python"))
    //如果没有这个Key 会报异常NoSuchElementException
    //println(hashMap.get("222"))

    //如果取不到这个Key 则会返回这个后面设定默认值
    println(hashMap.getOrElse("sql",2))

    // 统计数量，统计HashMap中有多少Value大于等于2
    val countBig2: Int = hashMap.count(
      (kv: (String, Int)) => {
        kv._2 >= 2
      }
    )
    println(countBig2)
  }
}
